package org.csu.jpetstore.persistence;

import org.csu.jpetstore.domain.Cart;
import org.csu.jpetstore.domain.CartItem;
import org.csu.jpetstore.domain.Item;
import org.springframework.stereotype.Repository;

import java.util.List;

@Repository
public interface CartMapper {
    // 检查购物车是否存在
    boolean isExist(String username);
    
    // 添加商品到购物车
    int insertCartItem(String username, String itemId, int quantity);
    
    // 删除用户的某个商品
    int deleteCartItem(String username, String itemId);
    
    // 获取用户的购物车商品列表
    List<CartItem> getCartItemsByUsername(String username);
    
    // 更新购物车商品数量
    void updateCartItemQuantity(String username, String itemId, int quantity);
    
    // 清空用户的购物车
    int deleteAllCartItems(String username);
    
    // 获取用户的某个商品ID
    String getItemIdByUsername(String username);
    
    // 获取用户的所有商品ID列表
    List<String> getItemIdListByUsername(String username);
    
    // 批量插入购物车商品
    void batchInsertCartItems(String username, List<CartItem> itemList);
}
